package work.util.init.trt;

import work.droit.data.Definition;
import work.droit.data.Fiche;
import work.droit.data.Jurisprudence;
import work.util.init.UpdateTraiment;

public class UpdTrt110 implements UpdateTraiment
{
	@Override
	public String[] dependentVersions()
	{
		return new String[] { "100" };
	}

	public String[] queriesBefore()
	{
		String query1 = "ALTER TABLE " + Definition.TABLENAME + " ADD COLUMN ";
		query1 += Definition.categorie.getName() + " " + Definition.categorie.getType().getSqlName();

		String query2 = "ALTER TABLE " + Jurisprudence.TABLENAME + " DROP COLUMN ";
		query2 += "categorie";
		
		String query3 = "ALTER TABLE " + Jurisprudence.TABLENAME + " ADD COLUMN ";
		query3 += Jurisprudence.fiche.getName() +" "+Jurisprudence.fiche.getType().getSqlName();

		return new String[] { query1 , query2, query3};
	}

	public String[] queriesAfter()
	{
		String query1 = "UPDATE " + Jurisprudence.TABLENAME + " SET ";
		query1 += Jurisprudence.fiche.getName() + " = " + ficheBidon.getValue(Fiche.id);
		
		return new String[] { query1};
	}

	private Fiche ficheBidon = null;

	@Override
	public void execute()
	{
		ficheBidon = new Fiche();
		ficheBidon.setChamp(Fiche.name, "Fiche bidon jurisprudence");
		ficheBidon.initialiseNewKey();
		
		ficheBidon.insert();
	}

}
